home *** CD-ROM | disk | FTP | other *** search
/ Champak 141 / (Vol 141) Oct 17 2011.iso / Games / Clueless.swf / scripts / Forms / BaseForm.as < prev    next >
Encoding:
Text File  |  2011-10-17  |  3.0 KB  |  125 lines

  1. package Forms
  2. {
  3.    import flash.display.DisplayObject;
  4.    import flash.display.MovieClip;
  5.    import flash.display.Stage;
  6.    import flash.events.MouseEvent;
  7.    
  8.    public class BaseForm extends MovieClip
  9.    {
  10.       
  11.       protected static var _bfCurrent:BaseForm = null;
  12.       
  13.       protected static var _stageCurrent:Stage = null;
  14.        
  15.       
  16.       protected var _bfBack:BaseForm = null;
  17.       
  18.       public function BaseForm()
  19.       {
  20.          _bfBack = null;
  21.          super();
  22.       }
  23.       
  24.       public static function countActiveForms() : int
  25.       {
  26.          var _loc1_:int = 0;
  27.          var _loc2_:BaseForm = null;
  28.          _loc1_ = 0;
  29.          _loc2_ = _bfCurrent;
  30.          while(_loc2_ != null)
  31.          {
  32.             _loc2_ = _loc2_._bfBack;
  33.             _loc1_++;
  34.          }
  35.          return _loc1_;
  36.       }
  37.       
  38.       public static function getCurrentForm() : BaseForm
  39.       {
  40.          return _bfCurrent;
  41.       }
  42.       
  43.       public static function initialForm(param1:BaseForm, param2:Stage) : void
  44.       {
  45.          BaseForm._bfCurrent = param1;
  46.          param2.addChild(BaseForm._bfCurrent);
  47.          _stageCurrent = param2;
  48.          BaseForm._bfCurrent.onFocus();
  49.       }
  50.       
  51.       public static function setForm(param1:BaseForm, param2:Boolean = false) : void
  52.       {
  53.          param1.setBack(_bfCurrent);
  54.          _bfCurrent.setFormImpl(param1,param2);
  55.       }
  56.       
  57.       public function onUnfocus() : void
  58.       {
  59.       }
  60.       
  61.       protected function setFormPermanent(param1:BaseForm) : void
  62.       {
  63.          param1.setBack(_bfBack);
  64.          setFormImpl(param1);
  65.       }
  66.       
  67.       public function FormCleanup() : void
  68.       {
  69.       }
  70.       
  71.       public function onFocus() : void
  72.       {
  73.          trace("Forms active = " + countActiveForms());
  74.       }
  75.       
  76.       protected function onBack(param1:MouseEvent) : void
  77.       {
  78.          if(_bfBack != null)
  79.          {
  80.             setFormImpl(_bfBack);
  81.          }
  82.       }
  83.       
  84.       public function setBack(param1:BaseForm) : void
  85.       {
  86.          _bfBack = param1;
  87.       }
  88.       
  89.       protected function removeForm() : void
  90.       {
  91.          if(_bfCurrent != null)
  92.          {
  93.             _stageCurrent.removeChild(_bfCurrent);
  94.             _bfCurrent = null;
  95.          }
  96.       }
  97.       
  98.       protected function setBackButton(param1:DisplayObject) : void
  99.       {
  100.          param1.addEventListener(MouseEvent.CLICK,onBack,false,0,true);
  101.       }
  102.       
  103.       protected function setFormImpl(param1:BaseForm, param2:Boolean = false) : void
  104.       {
  105.          MainDocument.swfcheck();
  106.          if(!param2)
  107.          {
  108.             removeForm();
  109.          }
  110.          _bfCurrent = param1;
  111.          _stageCurrent.addChild(_bfCurrent);
  112.          if(!param2)
  113.          {
  114.             onUnfocus();
  115.          }
  116.          param1.onFocus();
  117.       }
  118.       
  119.       public function isActiveForm() : Boolean
  120.       {
  121.          return this == _bfCurrent;
  122.       }
  123.    }
  124. }
  125.